package com.becca.cake.service.companyEatApply;

import java.util.List;
import java.util.Map;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import com.becca.cake.core.exception.ServiceException;
import com.becca.cake.model.activity.CompanyEatApplyModel;
import com.becca.cake.model.system.AdminDO;

/**
 * 试吃管理service接口
 * @copyright  尊星(上海)信息科技有限公司
 * @author yellow
 * @date 2016年7月20日 下午4:50:51
 */
public interface ICompanyEatApplyService {
    /**
     * 试吃申请查询
     * @param map
     * @return
     * @throws ServiceException
     */
    List<CompanyEatApplyModel> selectCompanyEatApply(Map<String, Object> map) throws Exception;

    /**
     * 获取试吃申请数据列表总条数
     * @param map
     * @return
     * @throws ServiceException
     */
    Long selectCompanyEatApplyCount(Map<String, Object> map) throws Exception;

    /**
     * 查询试吃申请对象
     * @return
     * @throws ServiceException
     */
    CompanyEatApplyModel selectCompanyEatApplyById(Integer id) throws Exception;

    /**
     * 修改试吃申请信息
     * @param companyEatApplyModel
     * @throws ServiceException
     */
    void updCompanyEatApplyById(CompanyEatApplyModel companyEatApplyModel) throws Exception;

    /**
     * 不通过处理
     * @param map
     * @throws ServiceException
     */
    void companyApplyEatdNoPass(Integer id, String noPassReason) throws Exception;

    /**
     * 勾选的企业试吃数据列表
     * @param ids
     * @return
     * @throws ServiceException
     */
    List<CompanyEatApplyModel> selectCompanyEatApplyToExcel(String ids) throws ServiceException;

    /**
     * 导出企业试吃申请数据到excel
     * @param request
     * @param response
     * @param ids
     * @throws ServiceException
     */
    void exportCompanyEatApplyToExcel(HttpServletRequest request, HttpServletResponse response,
                                      List list) throws ServiceException;

    /**
     * 企业试吃确认联系
     * @param id
     * @param string
     * @throws ServiceException
     */
    void updateEatApplyConnection(Integer id, String trueName);
    /**
     * 企业试吃审核通过
     * @param id
     * @param adminDo
     * @throws ServiceException
     * @author patty
     * @param username 
     */
    void companyEatApplyReviewPass(Integer id, String trueName);
    /**
     * 企业下单处理
     * @param companyEatApplyModel
     * @throws ServiceException
     */
    void companyEatApplyOrderPass(Integer id, Integer goodsPriceSizeId, String deliveryDate,
                                  String deliveryTimes, String trueName)throws ServiceException;



}
